cond1(true, x, y) → cond2(gr(x, y), x, y)
cond2(true, x, y) → cond1(neq(x, 0), y, y)
cond2(false, x, y) → cond1(neq(x, 0), p(x), y)
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
neq(0, 0) → false
neq(0, s(x)) → true
neq(s(x), 0) → true
neq(s(x), s(y)) → neq(x, y)
p(0) → 0
p(s(x)) → x
↳ QTRS
↳ AAECC Innermost
cond1(true, x, y) → cond2(gr(x, y), x, y)
cond2(true, x, y) → cond1(neq(x, 0), y, y)
cond2(false, x, y) → cond1(neq(x, 0), p(x), y)
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
neq(0, 0) → false
neq(0, s(x)) → true
neq(s(x), 0) → true
neq(s(x), s(y)) → neq(x, y)
p(0) → 0
p(s(x)) → x
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
neq(0, 0) → false
neq(0, s(x)) → true
neq(s(x), 0) → true
neq(s(x), s(y)) → neq(x, y)
p(0) → 0
p(s(x)) → x
cond1(true, x, y) → cond2(gr(x, y), x, y)
cond2(true, x, y) → cond1(neq(x, 0), y, y)
cond2(false, x, y) → cond1(neq(x, 0), p(x), y)
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
cond1(true, x, y) → cond2(gr(x, y), x, y)
cond2(true, x, y) → cond1(neq(x, 0), y, y)
cond2(false, x, y) → cond1(neq(x, 0), p(x), y)
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
neq(0, 0) → false
neq(0, s(x)) → true
neq(s(x), 0) → true
neq(s(x), s(y)) → neq(x, y)
p(0) → 0
p(s(x)) → x
cond1(true, x0, x1)
cond2(true, x0, x1)
cond2(false, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
p(0)
p(s(x0))
COND2(false, x, y) → COND1(neq(x, 0), p(x), y)
COND2(true, x, y) → COND1(neq(x, 0), y, y)
COND1(true, x, y) → COND2(gr(x, y), x, y)
COND2(true, x, y) → NEQ(x, 0)
COND2(false, x, y) → P(x)
GR(s(x), s(y)) → GR(x, y)
COND1(true, x, y) → GR(x, y)
NEQ(s(x), s(y)) → NEQ(x, y)
COND2(false, x, y) → NEQ(x, 0)
cond1(true, x, y) → cond2(gr(x, y), x, y)
cond2(true, x, y) → cond1(neq(x, 0), y, y)
cond2(false, x, y) → cond1(neq(x, 0), p(x), y)
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
neq(0, 0) → false
neq(0, s(x)) → true
neq(s(x), 0) → true
neq(s(x), s(y)) → neq(x, y)
p(0) → 0
p(s(x)) → x
cond1(true, x0, x1)
cond2(true, x0, x1)
cond2(false, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
p(0)
p(s(x0))
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
COND2(false, x, y) → COND1(neq(x, 0), p(x), y)
COND2(true, x, y) → COND1(neq(x, 0), y, y)
COND1(true, x, y) → COND2(gr(x, y), x, y)
COND2(true, x, y) → NEQ(x, 0)
COND2(false, x, y) → P(x)
GR(s(x), s(y)) → GR(x, y)
COND1(true, x, y) → GR(x, y)
NEQ(s(x), s(y)) → NEQ(x, y)
COND2(false, x, y) → NEQ(x, 0)
cond1(true, x, y) → cond2(gr(x, y), x, y)
cond2(true, x, y) → cond1(neq(x, 0), y, y)
cond2(false, x, y) → cond1(neq(x, 0), p(x), y)
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
neq(0, 0) → false
neq(0, s(x)) → true
neq(s(x), 0) → true
neq(s(x), s(y)) → neq(x, y)
p(0) → 0
p(s(x)) → x
cond1(true, x0, x1)
cond2(true, x0, x1)
cond2(false, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
p(0)
p(s(x0))
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDP
NEQ(s(x), s(y)) → NEQ(x, y)
cond1(true, x, y) → cond2(gr(x, y), x, y)
cond2(true, x, y) → cond1(neq(x, 0), y, y)
cond2(false, x, y) → cond1(neq(x, 0), p(x), y)
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
neq(0, 0) → false
neq(0, s(x)) → true
neq(s(x), 0) → true
neq(s(x), s(y)) → neq(x, y)
p(0) → 0
p(s(x)) → x
cond1(true, x0, x1)
cond2(true, x0, x1)
cond2(false, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
p(0)
p(s(x0))
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDP
NEQ(s(x), s(y)) → NEQ(x, y)
cond1(true, x0, x1)
cond2(true, x0, x1)
cond2(false, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
p(0)
p(s(x0))
cond1(true, x0, x1)
cond2(true, x0, x1)
cond2(false, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
p(0)
p(s(x0))
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
NEQ(s(x), s(y)) → NEQ(x, y)
From the DPs we obtained the following set of size-change graphs:
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
GR(s(x), s(y)) → GR(x, y)
cond1(true, x, y) → cond2(gr(x, y), x, y)
cond2(true, x, y) → cond1(neq(x, 0), y, y)
cond2(false, x, y) → cond1(neq(x, 0), p(x), y)
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
neq(0, 0) → false
neq(0, s(x)) → true
neq(s(x), 0) → true
neq(s(x), s(y)) → neq(x, y)
p(0) → 0
p(s(x)) → x
cond1(true, x0, x1)
cond2(true, x0, x1)
cond2(false, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
p(0)
p(s(x0))
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
GR(s(x), s(y)) → GR(x, y)
cond1(true, x0, x1)
cond2(true, x0, x1)
cond2(false, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
p(0)
p(s(x0))
cond1(true, x0, x1)
cond2(true, x0, x1)
cond2(false, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
p(0)
p(s(x0))
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
GR(s(x), s(y)) → GR(x, y)
From the DPs we obtained the following set of size-change graphs:
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
COND2(false, x, y) → COND1(neq(x, 0), p(x), y)
COND2(true, x, y) → COND1(neq(x, 0), y, y)
COND1(true, x, y) → COND2(gr(x, y), x, y)
cond1(true, x, y) → cond2(gr(x, y), x, y)
cond2(true, x, y) → cond1(neq(x, 0), y, y)
cond2(false, x, y) → cond1(neq(x, 0), p(x), y)
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
neq(0, 0) → false
neq(0, s(x)) → true
neq(s(x), 0) → true
neq(s(x), s(y)) → neq(x, y)
p(0) → 0
p(s(x)) → x
cond1(true, x0, x1)
cond2(true, x0, x1)
cond2(false, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
p(0)
p(s(x0))
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
COND2(false, x, y) → COND1(neq(x, 0), p(x), y)
COND2(true, x, y) → COND1(neq(x, 0), y, y)
COND1(true, x, y) → COND2(gr(x, y), x, y)
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
neq(0, 0) → false
neq(s(x), 0) → true
p(0) → 0
p(s(x)) → x
cond1(true, x0, x1)
cond2(true, x0, x1)
cond2(false, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
p(0)
p(s(x0))
cond1(true, x0, x1)
cond2(true, x0, x1)
cond2(false, x0, x1)
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
COND2(true, x, y) → COND1(neq(x, 0), y, y)
COND2(false, x, y) → COND1(neq(x, 0), p(x), y)
COND1(true, x, y) → COND2(gr(x, y), x, y)
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
neq(0, 0) → false
neq(s(x), 0) → true
p(0) → 0
p(s(x)) → x
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
p(0)
p(s(x0))
COND2(false, s(x0), y1) → COND1(true, p(s(x0)), y1)
COND2(false, 0, y1) → COND1(false, p(0), y1)
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
COND2(true, x, y) → COND1(neq(x, 0), y, y)
COND1(true, x, y) → COND2(gr(x, y), x, y)
COND2(false, 0, y1) → COND1(false, p(0), y1)
COND2(false, s(x0), y1) → COND1(true, p(s(x0)), y1)
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
neq(0, 0) → false
neq(s(x), 0) → true
p(0) → 0
p(s(x)) → x
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
p(0)
p(s(x0))
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
COND2(true, x, y) → COND1(neq(x, 0), y, y)
COND1(true, x, y) → COND2(gr(x, y), x, y)
COND2(false, s(x0), y1) → COND1(true, p(s(x0)), y1)
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
neq(0, 0) → false
neq(s(x), 0) → true
p(0) → 0
p(s(x)) → x
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
p(0)
p(s(x0))
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
COND2(true, x, y) → COND1(neq(x, 0), y, y)
COND1(true, x, y) → COND2(gr(x, y), x, y)
COND2(false, s(x0), y1) → COND1(true, p(s(x0)), y1)
neq(0, 0) → false
neq(s(x), 0) → true
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
p(s(x)) → x
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
p(0)
p(s(x0))
COND2(false, s(x0), y1) → COND1(true, x0, y1)
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
COND2(true, x, y) → COND1(neq(x, 0), y, y)
COND2(false, s(x0), y1) → COND1(true, x0, y1)
COND1(true, x, y) → COND2(gr(x, y), x, y)
neq(0, 0) → false
neq(s(x), 0) → true
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
p(s(x)) → x
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
p(0)
p(s(x0))
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
COND2(true, x, y) → COND1(neq(x, 0), y, y)
COND2(false, s(x0), y1) → COND1(true, x0, y1)
COND1(true, x, y) → COND2(gr(x, y), x, y)
neq(0, 0) → false
neq(s(x), 0) → true
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
p(0)
p(s(x0))
p(0)
p(s(x0))
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
COND2(true, x, y) → COND1(neq(x, 0), y, y)
COND2(false, s(x0), y1) → COND1(true, x0, y1)
COND1(true, x, y) → COND2(gr(x, y), x, y)
neq(0, 0) → false
neq(s(x), 0) → true
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
COND2(true, s(x0), y1) → COND1(true, y1, y1)
COND2(true, 0, y1) → COND1(false, y1, y1)
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
COND2(true, s(x0), y1) → COND1(true, y1, y1)
COND2(false, s(x0), y1) → COND1(true, x0, y1)
COND1(true, x, y) → COND2(gr(x, y), x, y)
COND2(true, 0, y1) → COND1(false, y1, y1)
neq(0, 0) → false
neq(s(x), 0) → true
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
COND2(true, s(x0), y1) → COND1(true, y1, y1)
COND2(false, s(x0), y1) → COND1(true, x0, y1)
COND1(true, x, y) → COND2(gr(x, y), x, y)
neq(0, 0) → false
neq(s(x), 0) → true
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
COND2(true, s(x0), y1) → COND1(true, y1, y1)
COND2(false, s(x0), y1) → COND1(true, x0, y1)
COND1(true, x, y) → COND2(gr(x, y), x, y)
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
neq(0, 0)
neq(0, s(x0))
neq(s(x0), 0)
neq(s(x0), s(x1))
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ NonInfProof
COND2(true, s(x0), y1) → COND1(true, y1, y1)
COND2(false, s(x0), y1) → COND1(true, x0, y1)
COND1(true, x, y) → COND2(gr(x, y), x, y)
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
(1) (COND2(gr(x4, x5), x4, x5)=COND2(true, s(x6), x7) ⇒ COND2(true, s(x6), x7)≥COND1(true, x7, x7))
(2) (gr(x4, x5)=true∧x4=s(x6) ⇒ COND2(true, s(x6), x5)≥COND1(true, x5, x5))
(3) (true=true∧s(x27)=s(x6) ⇒ COND2(true, s(x6), 0)≥COND1(true, 0, 0))
(4) (gr(x28, x29)=true∧s(x28)=s(x6)∧(∀x30:gr(x28, x29)=true∧x28=s(x30) ⇒ COND2(true, s(x30), x29)≥COND1(true, x29, x29)) ⇒ COND2(true, s(x6), s(x29))≥COND1(true, s(x29), s(x29)))
(5) (COND2(true, s(x27), 0)≥COND1(true, 0, 0))
(6) (gr(x28, x29)=true ⇒ COND2(true, s(x28), s(x29))≥COND1(true, s(x29), s(x29)))
(7) (true=true ⇒ COND2(true, s(s(x32)), s(0))≥COND1(true, s(0), s(0)))
(8) (gr(x33, x34)=true∧(gr(x33, x34)=true ⇒ COND2(true, s(x33), s(x34))≥COND1(true, s(x34), s(x34))) ⇒ COND2(true, s(s(x33)), s(s(x34)))≥COND1(true, s(s(x34)), s(s(x34))))
(9) (COND2(true, s(s(x32)), s(0))≥COND1(true, s(0), s(0)))
(10) (COND2(true, s(x33), s(x34))≥COND1(true, s(x34), s(x34)) ⇒ COND2(true, s(s(x33)), s(s(x34)))≥COND1(true, s(s(x34)), s(s(x34))))
(11) (COND2(gr(x12, x13), x12, x13)=COND2(false, s(x14), x15) ⇒ COND2(false, s(x14), x15)≥COND1(true, x14, x15))
(12) (gr(x12, x13)=false∧x12=s(x14) ⇒ COND2(false, s(x14), x13)≥COND1(true, x14, x13))
(13) (false=false∧0=s(x14) ⇒ COND2(false, s(x14), x35)≥COND1(true, x14, x35))
(14) (gr(x37, x38)=false∧s(x37)=s(x14)∧(∀x39:gr(x37, x38)=false∧x37=s(x39) ⇒ COND2(false, s(x39), x38)≥COND1(true, x39, x38)) ⇒ COND2(false, s(x14), s(x38))≥COND1(true, x14, s(x38)))
(15) (gr(x37, x38)=false ⇒ COND2(false, s(x37), s(x38))≥COND1(true, x37, s(x38)))
(16) (false=false ⇒ COND2(false, s(0), s(x40))≥COND1(true, 0, s(x40)))
(17) (gr(x42, x43)=false∧(gr(x42, x43)=false ⇒ COND2(false, s(x42), s(x43))≥COND1(true, x42, s(x43))) ⇒ COND2(false, s(s(x42)), s(s(x43)))≥COND1(true, s(x42), s(s(x43))))
(18) (COND2(false, s(0), s(x40))≥COND1(true, 0, s(x40)))
(19) (COND2(false, s(x42), s(x43))≥COND1(true, x42, s(x43)) ⇒ COND2(false, s(s(x42)), s(s(x43)))≥COND1(true, s(x42), s(s(x43))))
(20) (COND1(true, x17, x17)=COND1(true, x18, x19) ⇒ COND1(true, x18, x19)≥COND2(gr(x18, x19), x18, x19))
(21) (COND1(true, x17, x17)≥COND2(gr(x17, x17), x17, x17))
(22) (COND1(true, x20, x21)=COND1(true, x22, x23) ⇒ COND1(true, x22, x23)≥COND2(gr(x22, x23), x22, x23))
(23) (COND1(true, x20, x21)≥COND2(gr(x20, x21), x20, x21))
POL(0) = 0
POL(COND1(x1, x2, x3)) = -1 - x1 + x2 + x3
POL(COND2(x1, x2, x3)) = -1 - x1 + x2 + x3
POL(c) = -1
POL(false) = 0
POL(gr(x1, x2)) = 0
POL(s(x1)) = 1 + x1
POL(true) = 0
The following pairs are in Pbound:
COND2(true, s(x0), y1) → COND1(true, y1, y1)
COND2(false, s(x0), y1) → COND1(true, x0, y1)
The following rules are usable:
COND2(true, s(x0), y1) → COND1(true, y1, y1)
COND2(false, s(x0), y1) → COND1(true, x0, y1)
COND1(true, x, y) → COND2(gr(x, y), x, y)
true → gr(s(x), 0)
gr(x, y) → gr(s(x), s(y))
false → gr(0, x)
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Rewriting
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ NonInfProof
↳ QDP
↳ DependencyGraphProof
COND1(true, x, y) → COND2(gr(x, y), x, y)
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))